/*
 * To change this license header, choose License Headers in Project Properties.
 * To change this template file, choose Tools | Templates
 * and open the template in the editor.
 */

package controller;

import java.io.File;
import java.rmi.*;
import model.User;

/**
 *
 * @author mona
 */
public interface ChatServerInt extends Remote
{
    
    public int signIn(String userName , String password, ClientInt clientRef) throws RemoteException;
    public User[] getFriends(String userName , String password, int reqStatus) throws RemoteException;
    public ClientInt returnUsers(String userName)throws RemoteException;
    public boolean signOut(String userName) throws RemoteException;
    public int startConference(String[] friends,int numberOfConf,String userNameWhoSentReq) throws RemoteException; 
    public int signUp(String email,String name,String password,String userName,String country,String gender)throws RemoteException;
    public int sendMail (String senderMail , String[] receiverMail , String subject , String text) throws RemoteException ;
    public User getMyUser(String myUserName) throws RemoteException;
    public void updateStatus(String userName, int _status)  throws RemoteException;
    public int controlFriendRelation(String senderUsername , String recieverUserName,int action)  throws RemoteException;
    public boolean addFriendBefore(String myUsername , String friendUserName) throws RemoteException;
}
